<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8" />
    <title>对象继承</title>
</head>

<body>
    <script type="text/javascript">
        class Phone {
            //为实例对象添加属性 (可选的)
            brand;
            price;

            //构造方法
            constructor(brand, price) {
                //初始化操作
                this.brand = brand;
                this.price = price;
            }

            //添加方法
            dianhua() {
                console.log('可以打电话.....');
            }

            x(){
                console.log('xxxx');
            }

        }

        //智能手机类
        class SmartPhone extends Phone{
            //存储空间
            storage;
            //像素
            pixel;
            //初始化
            constructor(brand, price, storage, pixel){
                // //调用父类的构造方法进行初始化
                super(brand, price); //必须要编写的内容 *****
                // //子类属性初始化
                // this.storage = storage;
                // this.pixel = pixel;
            }

            //成员方法
            chat(){
                console.log('可以聊天');
            }

            photo(){
                console.log('可以拍照哦~~~');
            }

            //定义 dianhua 方法
            dianhua(){
                console.log('可以跟某人通话....');
                //在子类方法中, 可以使用 super.xxx 的方式来调用父类的方法
                super.dianhua();
                super.x();
            }
        }

        //实例化
        let IQOO = new SmartPhone('IQOO', 1999, '512G', '5000w');

        // console.log(IQOO);
        // IQOO.dianhua();

        IQOO.dianhua();
    </script>
</body>

</html>